package cmk.lee.easy;

import java.util.HashMap;
import java.util.Map;

public class Leetcode_13 {
	/**
	 *罗马数字 2 写做 II ，即为两个并列的 1。12 写做 XII ，
	 * 即为 X + II 。 27 写做  XXVII, 即为 XX + V + II
	 */
	public static int romanToInt(String s) {
		Map<Character, Integer> map = new HashMap<>();
		map.put('I', 1);
		map.put('V', 5);
		map.put('X', 10);
		map.put('L', 50);
		map.put('C', 100);
		map.put('D', 500);
		map.put('M', 1000);

		int num = 0;
		int sum = 0;
		for (int i = 0; i < s.length(); i++) {
			if (num == 0) {
				num = map.get(s.charAt(i));
				sum += num;
			} else if (num >= map.get(s.charAt(i))) {
				num = map.get(s.charAt(i));
				sum += num;
			} else {
				sum += map.get(s.charAt(i)) - num * 2;
			}

		}
		return sum;
	}

	public static void main(String[] args) {
		System.out.println(romanToInt("XM"));
	}
}
